查看原文
其他

后ResNet时代:SENet与SKNet

郭晓锋 PaperWeekly 2019-12-18


本篇介绍两个图像分类方面的工作:SENet 和 SKNet,听这名字就知道,这两个是兄弟。SENet 提出了 Sequeeze and Excitation block,而 SKNet 提出了 Selective Kernel Convolution,二者都可以很方便的嵌入到现在的网络结构,比如 ResNet、Inception、ShuffleNet,实现精度的提升。


作者丨郭晓锋 

单位丨北京爱奇艺科技有限公司算法工程师 

研究方向丨图像生成


SENet




Motivation


目前的卷积是在 2D 空间中做卷积,其本质上来说只建模了图像的空间信息,并没有建模通道之间的信息。于是,作者就尝试对 Channel 之间的信息进行显式建模。


网络结构



左边为 C'×H'×W' 的特征图,经过一系列卷积,pooling 操作 Ftr 之后,得到 C×H×W 大小的特征图。接下来进行一个 Sequeeze and Excitation block。 


Sequeeze:对 C×H×W 进行 global average pooling,得到 1×1×C 大小的特征图,这个特征图可以理解为具有全局感受野。


Excitation :使用一个全连接神经网络,对 Sequeeze 之后的结果做一个非线性变换。 


特征重标定:使用 Excitation 得到的结果作为权重,乘到输入特征上。


总结 


总体来说思路很清晰,Motivation 也有一定的道理。此外,这个结构可以作为任意网络的子模块添加进去以提升精度,而且引入的计算量非常小。 


但是有一个问题在于,卷积过程本身在 Channel 之间也会有一个乘数,这个乘数是不是可以理解为建模了 Channel 之间的信息呢?


如果作者对前面的卷积使用 C 路的 Group Convolution,然后与加入 Sequeeze and Excitation block 前后的精度进行对比,或许文章会更有说服力一些。 


最终结果很不错,计算量几乎没变化,但是精度上升了,取得了 ImageNet 2017 的冠军。


SKNet




Motivation 


SKNet 使用了两个思路来提高精度: 


1. 很多网络使用了各种 Trick 来降低计算量,比如 ResNeXt,计算量大大减少,精度却略有提升。那么如果不牺牲那么多计算量,能否精度提高一些呢?比如使用大一点的 Kernel,如 5×5 的卷积提升精度;


2. 结合现在普遍使用的 Attention 操作。


加了上面两个操作之后,显然计算量会上去,于是作者再加了一个 Group Convolution 来做 trade off。 


网络结构



上述结构可以分为三个步骤: 


Split:输入为 c×h×w 的特征图,均表示 Group Convolution。这里使用 Group Convolution 以减少计算量。注意,这里两路 Group Convolution 使用的卷积核大小不一致,原因在于 Motivation 中说的第一点,提升精度。 


Fuse:通过 Split 操作分成两路之后,再把两路结果进行融合,然后就是一个 Sequeeze and Excitation block。 


Select:Select 模块把 Sequeeze and Excitation block 模块的结果通过两个 softmax 以回归出 Channel 之间的权重信息。然后把这个权重信息乘到中。这个过程可以看做是一个 soft attention。最好把两路的特征图进行相加得到输出特征图 V。


总结 


整体感觉融合了较多的 trick,Select 部分使用 soft attention 和 Sequeeze and Excitation block 中对特征图加权蛮像的,区别在于 Sequeeze and Excitation block 考虑的是 Channel 之间的权重,而 Select 部分的 attention 不仅考虑了 Channel 之间的权重,还考虑了两路卷积的权重。 


同样的,SKNet 可以很容易地嵌入到其他网络结构中。下图是基于 ResNeXt-50 的 SENet 和 SKNet 计算量,以及精度对比。可以看到,计算量(GFLOPs)只是略有上升,精度方面相比于 ResNeXt-50 涨了 1.4% 左右:





点击以下标题查看更多往期内容: 




#投 稿 通 道#

 让你的论文被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢? 答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。


📝 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志


📬 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通




🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



关于PaperWeekly


PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。


▽ 点击 | 阅读原文 | 获取最新论文推荐

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存